package com.hnit.mapper;

import com.hnit.configs.ProductEs;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.util.List;

@Repository
public interface ProductEsRepository extends ElasticsearchRepository<ProductEs, Long> {

    /**
     * 根据商品名称和状态搜索
     */
    List<ProductEs> findByProductNameContainingAndProductStatus(String productName, Integer productStatus);

    /**
     * 根据详情描述和状态搜索
     */
    List<ProductEs> findByDetailContainingAndProductStatus(String detail, Integer productStatus);

    /**
     * 根据分类ID和商品名称搜索
     */
    List<ProductEs> findByCategoryIdAndProductNameContaining(Long categoryId, String productName);

    /**
     * 价格范围搜索
     */
    List<ProductEs> findByPriceBetweenAndProductStatus(BigDecimal minPrice, BigDecimal maxPrice, Integer productStatus);

    List<ProductEs> findByProductStatus(Integer productStatus);
}
